There is a challenge for data model extensibility of distributed data collection systems. A data model may be described as a conceptual representation of data structures required by a system. Data model extensibility is a characteristic of a data model and defines the extent to which the data model's logical design is capable of incorporating additional attributes to existing data structures. Distributed data collection systems may be described as systems specifically developed to measure, collect, and aggregate data of interest. Distributed data collection systems distribute their dedicated data collection processing logic across different components with the objective of distributing data processing loads and providing data collecting logic specific to target data source.
Traditionally this challenge has been approached by means of data model consolidation supported in a hub-spoke model via a central server (“hub”) or object catalogue that contains common data structure definitions for common data structures. With these conventional approaches, updates to a system-wide common data model are executed in the central server (hub) and subsequently propagated to all client (“spoke”) components in the distributed data collection system.
This propagation mechanism forces client components to implement the common data structures that might not be related-to or assist-with their main functional role in the distributed data collection system. Additionally, a centralized data model includes dependency on design time definition and impacts client components when there are new revisions and upgrade procedures.
In certain embodiments, there is optimization of data integration in the context of Supervisory, Control and Data Acquisition systems (SCADA). With SCADA systems, there is a complexity of data structures and no standard Application Programming Interfaces (APIs) or integration protocols implemented across multiple SCADA vendors. This type of industrial control system is intended to monitor and control distributed data collection systems covering multiple sites and multiple monitored devices. To efficiently consume SCADA data, distributed data collection systems provide an effective way to extend its data model to accommodate any type of target device and its associated data structures. One way in which these integration requirements have been approached is by providing dedicated monitoring solutions geared to a particular SCADA vendor; however this limits the level of data consolidation for upper layers in the system stack and ties implementations to specific technology provider's releases.